Skip to content

fix(compile): Turn warning summaries into errors also#16721

Merged
weihanglo merged 1 commit intorust-lang:masterfrom
epage:error
Mar 7, 2026
Merged

fix(compile): Turn warning summaries into errors also#16721
weihanglo merged 1 commit intorust-lang:masterfrom
epage:error

Conversation

@epage
Copy link
Contributor

@epage epage commented Mar 7, 2026

What does this PR try to resolve?

rust-lang/rust is dogfooding build.warnings and I got usability feedback that they assume they can ignore warnings and then miss the lone error message at the end.

While I think it is appropriate to report each warnings as a warning (to preserve the original level of importance and improve caching), turning the summaries into errors I think can help draw attention to this.

How to test and review this PR?

The warning summary line is already quiet large, so I left the talk of build.warnings to the last message still.

rust-lang/rust is dogfooding `build.warnings` and I got usability
feedback that they assume they can ignore warnings and then miss the lone
error message at the end.

While I think it is appropriate to report each warnings as a warning (to
preserve the original level of importance and improve caching),
turning the summaries into errors I think can help draw attention to
this.

The warning summary line is already quiet large, so I left the talk of
`build.warnings` to the last message still.
@rustbot rustbot added A-build-execution Area: anything dealing with executing the compiler S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Mar 7, 2026
@rustbot
Copy link
Collaborator

rustbot commented Mar 7, 2026

r? @weihanglo

rustbot has assigned @weihanglo.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

Why was this reviewer chosen?

The reviewer was selected based on:

  • Owners of files modified in this PR: @ehuss, @epage, @weihanglo
  • @ehuss, @epage, @weihanglo expanded to ehuss, epage, weihanglo
  • Random selection from ehuss, weihanglo

Copy link
Member

@weihanglo weihanglo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems reasonable thought could we get a reference to the feedback? I guess it's was in DM as I saw @Urgau approving this

View changes since this review

@epage
Copy link
Contributor Author

epage commented Mar 7, 2026

Seems reasonable thought could we get a reference to the feedback? I guess it's was in DM as I saw @Urgau approving this

Yes, over DM. Not much I can at least add and unsure what more you are looking for.

There will be a follow up change to make warnings stop the build without --keep-going which also came out of that feedback (the level of noise also made it hard to see the warning). This was something that has already been discussed on Zulip somewhat but all conversations have been more theoretical without any strong opinions pushing one way or the other.

@weihanglo weihanglo added this pull request to the merge queue Mar 7, 2026
Merged via the queue into rust-lang:master with commit 7e606be Mar 7, 2026
29 checks passed
@rustbot rustbot removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Mar 7, 2026
@epage epage deleted the error branch March 9, 2026 17:53
github-merge-queue bot pushed a commit that referenced this pull request Mar 10, 2026
### What does this PR try to resolve?

This had been discussed a little bit on
[zulip](https://rust-lang.zulipchat.com/#narrow/channel/246057-t-cargo/topic/Environment.20variable.20for.20.5Blints.5D.20table.3F/near/553969201).
This then came up in usability feedback from @Urgau with
rust-lang/rust's x.py having adopted `build.warnings`.
The output from all of the other build targets causes the warnings to
disappear off the screen which doesn't happen with errors because the
build ends immediately.

So we're making warnings act more like errors.

### How to test and review this PR?

This is a follow up to #16721
rust-bors bot pushed a commit to rust-lang/rust that referenced this pull request Mar 13, 2026
Update cargo submodule

21 commits in 90ed291a50efc459e0c380d7b455777ed41c6799..cbb9bb8bd0fb272b1be0d63a010701ecb3d1d6d3
2026-03-05 15:11:25 +0000 to 2026-03-13 14:34:16 +0000
- fix(git): preserve SCP-like submodule URLs for fetch (rust-lang/cargo#16744)
- Fix 16732 (rust-lang/cargo#16746)
- fix(rustdoc): switch to new `--emit` options (rust-lang/cargo#16739)
- fix(git): convert SCP-like submodule URLs to ssh:// format (rust-lang/cargo#16727)
- fix(core): typo (rust-lang/cargo#16738)
- CARGO_TARGET_DIR doesn't have to be relative (rust-lang/cargo#16735)
- chore(ci): Detect user changes to src/etc/man (rust-lang/cargo#16736)
- util: Exclude from iCloud Drive sync on macOS (rust-lang/cargo#16728)
- fix(compile): Stop on denying warnings without --keep-going  (rust-lang/cargo#16725)
- feat(shell): Support OSC 9;4 progress on ptyxis (rust-lang/cargo#16730)
- Let git decide when to run gc (rust-lang/cargo#16459)
- chore(deps): update cargo-semver-checks to v0.47.0 (rust-lang/cargo#16723)
- fix(compile): Turn warning summaries into errors also (rust-lang/cargo#16721)
- fix(fix): Switch from ad-hoc to structured warnings (rust-lang/cargo#16711)
- fix: ignore implicit std dependencies in `unused-crate-dependencies` lint (rust-lang/cargo#16677)
- chore(deps): update msrv (3 versions) to v1.92 (rust-lang/cargo#16716)
- chore(deps): update msrv (1 version) to v1.94 (rust-lang/cargo#16710)
- fix(script): surpress `unused_features` lint for embedded (rust-lang/cargo#16714)
- Split `build-dir` lock into dedicated lock  (rust-lang/cargo#16708)
- Add missing truncate when writing .crate files (rust-lang/cargo#16688)
- refactor(fix): Prep for annotate-snippets (rust-lang/cargo#16702)
@rustbot rustbot added this to the 1.96.0 milestone Mar 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-build-execution Area: anything dealing with executing the compiler

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants